satabs: A Bit-Precise Verifier for C Programs - (Competition Contribution)

نویسندگان

  • Gérard Basler
  • Alastair F. Donaldson
  • Alexander Kaiser
  • Daniel Kroening
  • Michael Tautschnig
  • Thomas Wahl
چکیده

SatAbs is a bit-precise software model checker for ANSI-C programs. It implements sound predicate-abstraction based algorithms for both sequential and concurrent software. 1 Verification Approach SatAbs [7] is a verifier for C programs that uses counterexample-guided abstraction refinement [8] (Fig. 1), based on predicate abstraction [12], as pioneered by SLAM [2]. By interpreting variables of the C program as bit-vectors, efficient SAT procedures are used for abstraction and simulation [6]. This renders the theorem prover calls that are made during abstraction decidable, and enables bit-precise verification, which is essential when analysing system-level software. In [10] the first sound and symmetry-aware predicate abstraction based approach towards model checking multi-threaded programs was presented. These results have now been integrated with SatAbs, allowing scalable verification of concurrent C programs comprised of replicated threads. 1.) Compute Abstraction 2.) Check Abstraction 3.) Check Feasibility 4.) Refine Predicates C program

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Interpolation-Based Software Verification with Wolverine

Wolverine is a software verification tool using Craig interpolation to compute invariants of ANSI-C and C++ programs. The tool is an implementation of the lazy abstraction approach, generating a reachability tree by unwinding the transition relation of the input program and annotating its nodes with interpolants representing safe states. Wolverine features a built-in interpolating decision proc...

متن کامل

2LS for Program Analysis - (Competition Contribution)

2LS is a program analysis tool for C programs built upon the CPROVER infrastructure. 2LS is bit-precise and it can verify and refute program assertions. 2LS implements invariant generation techniques, incremental bounded model checking and incremental k-induction. The competition submission uses an algorithm combining all three techniques, called kIkI (k-invariants and k-induction). As a back e...

متن کامل

SATABS: SAT-Based Predicate Abstraction for ANSI-C

This paper presents a model checking tool, SatAbs, that implements a predicate abstraction refinement loop. Existing software verification tools such as Slam, Blast, or Magic use decision procedures for abstraction and simulation that are limited to integers. SatAbs overcomes these limitations by using a SAT-solver. This allows the model checker to handle the semantics of the ANSI-C standard ac...

متن کامل

Wolverine: Battling Bugs with Interpolants - (Competition Contribution)

Wolverine is a software verifier that checks safety properties of sequential ANSI-C and C++ programs, deploying Craig interpolation to derive program invariants. We describe the underlying approach and the architecture, and provide instructions for installation and usage.

متن کامل

Modeling and Verification of Mobile Systems

This paper describes an approach for modeling and verification of mobile systems. Mobile systems are multi-threaded programs that are characterized by 1) the explicit notion of locations (e.g., sites where they run), 2) the ability to create and execute (possibly infinite) threads at multiple locations (e.g., sites), and 3) the capability to withstand network failures. We give formal semantics ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012